package org.dromara.system.domain.vo;

import java.math.BigDecimal;
import org.dromara.system.domain.SysProfitRule;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import java.util.Date;
import java.io.Serial;
import java.io.Serializable;

/**
 * 分佣规则视图对象 sys_profit_rule
 *
 * @author yixiacoco
 * @date 2025-09-04
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = SysProfitRule.class)
public class SysProfitRuleVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 规则id
     */
    @ExcelProperty(value = "规则id")
    private String ruleId;

    /**
     * 规则名称
     */
    @ExcelProperty(value = "规则名称")
    private String ruleName;

    /**
     * 规则描述
     */
    @ExcelProperty(value = "规则描述")
    private String ruleDescription;

    /**
     * 规则类型（percentage/fixed）
     */
    @ExcelProperty(value = "规则类型")
    private String ruleType;

    /**
     * 分佣金额（固定金额）
     */
    @ExcelProperty(value = "分佣金额")
    private BigDecimal profitFormula;

    /**
     * 一级分佣百分比
     */
    @ExcelProperty(value = "一级分佣百分比")
    private BigDecimal oneProfitPercentage;

    /**
     * 二级分佣百分比
     */
    @ExcelProperty(value = "二级分佣百分比")
    private BigDecimal twoProfitPercentage;

    /**
     * 三级分佣百分比
     */
    @ExcelProperty(value = "三级分佣百分比")
    private BigDecimal threeProfitPercentage;

    /**
     * 创建时间
     */
    @ExcelProperty(value = "创建时间")
    private Date createTime;

    /**
     * 更新时间
     */
    @ExcelProperty(value = "更新时间")
    private Date updateTime;

}
